(function() { var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};templates['apoya-projecto'] = template(function (Handlebars,depth0,helpers,partials,data) {
  this.compilerInfo = [4,'>= 1.0.0'];
helpers = this.merge(helpers, Handlebars.helpers); data = data || {};
  var buffer = "", stack1, functionType="function", escapeExpression=this.escapeExpression, self=this;

function program1(depth0,data) {
  
  var buffer = "", stack1;
  buffer += "\n        <div class=\"col-md-3\">\n            <div class=\"thumbnail item\">\n                <a href=\"#details/";
  if (stack1 = helpers.id) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.id; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "\">\n                    <img alt=\"";
  if (stack1 = helpers.name) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.name; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "\" src=\"";
  if (stack1 = helpers.url) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.url; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "\">\n                </a>\n                <h5><a href=\"#details/";
  if (stack1 = helpers.id) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.id; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "\">";
  if (stack1 = helpers.name) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.name; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "</a></h5>\n                <p>";
  if (stack1 = helpers.producer) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.producer; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "</p>\n                <div class=\"info-days\">\n                    <div class=\"left\">\n                        ";
  if (stack1 = helpers.stars) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.stars; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + " estrellas / ";
  if (stack1 = helpers.price) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.price; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "\n                    </div>\n                    <div class=\"clear\"></div>\n                </div>\n            </div>\n        </div>\n    ";
  return buffer;
  }

  buffer += "<div class=\"row\">\n    ";
  stack1 = helpers.each.call(depth0, depth0.list, {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data});
  if(stack1 || stack1 === 0) { buffer += stack1; }
  buffer += "\n</div>";
  return buffer;
  } ); })();(function() { var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};templates['base-layout'] = template(function (Handlebars,depth0,helpers,partials,data) {
  this.compilerInfo = [4,'>= 1.0.0'];
helpers = this.merge(helpers, Handlebars.helpers); data = data || {};
  


  return "        <div id=\"header\" ></div>\n        <div class=\"clearfix\"></div>\n        <br><br>\n        <br><br>\n        <br>\n        <div id=\"body\" class=\"container\" >\n            <div class=\"row\">\n                <div class=\"col-sm-3\">\n                    <div id=\"sidebar\">\n                    </div>\n                </div>\n                <div class=\"col-sm-9\">\n\n                    <div id=\"page-content\">\n                    </div>\n\n                </div>\n            </div>\n        </div>\n        <div id=\"footer\" class=\"container\"></div>";
  } ); })();(function() { var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};templates['create_project'] = template(function (Handlebars,depth0,helpers,partials,data) {
  this.compilerInfo = [4,'>= 1.0.0'];
helpers = this.merge(helpers, Handlebars.helpers); data = data || {};
  


  return "<div class=\"page-content\">\n                        <form class=\"form-create_project\" role=\"form\">\n                            <h2 class=\"form-create_project-heading\">Ingrese los datos del proyecto </h2>\n\n<div class=\"row\">\n    <label for=\"InputName\" class=\"col-sm-11 col-sm-offset-1\">Nombre</label>\n       <div class=\"col-sm-4 col-sm-offset-3\">                     \n            <input type=\"text\" class=\"form-control\" placeholder=\"Ingresar Nombre\" required autofocus>\n        </div>\n\n    <label for=\"InputDesc\" class=\"col-sm-11 col-sm-offset-1\">Descripci�n</label>\n    <div class=\"col-sm-4 col-sm-offset-3\"> \n            <input type=\"text\" class=\"form-control\" placeholder=\"Ingresar Descripcion\" required>\n     </div>\n\n    <label for=\"InputInfo\" class=\"col-sm-11 col-sm-offset-1\">Informaci�n Adicional</label>\n    <div class=\"col-sm-4 col-sm-offset-3\"> \n        <input type=\"text\" class=\"form-control\" placeholder=\"Ingresar datos adicionales\" required autofocus>\n    </div>\n\n    <label for=\"InputObjetivo\" class=\"col-sm-11 col-sm-offset-1\">Objetivos</label>\n<div class=\"col-sm-4 col-sm-offset-3\"> \n<input type=\"text\" class=\"form-control\" placeholder=\"Ingresar Objetivos\" required>\n</div>\n \n    <label for=\"InputInfo\" class=\"col-sm-11 col-sm-offset-1\">Video</label>\n<div class=\"col-sm-4 col-sm-offset-3\"> \n<input type=\"text\" class=\"form-control\" placeholder=\"Ingresar link de youtube\" required autofocus>\n</div>\n\n    <label for=\"logo\" class=\"col-sm-11 col-sm-offset-1\">Adjuntar un logo</label>\n                            <div class=\"col-sm-4 col-sm-offset-3\"> \n<input type=\"file\" id=\"logo\">\n</div>\n\n<label for=\"Categor�a\" class=\"col-sm-11 col-sm-offset-1\">Elegir Categoria</label>\n                            <div class=\"col-sm-4 col-sm-offset-3\"> \n<select class=\"form-control\">\n  <option>Categoria 1</option>\n  <option>Categoria 2</option>\n  <option>Categoria 3</option>\n  <option>Categoria 4</option>\n  <option>Categoria 5</option>\n</select>\n</div>\n</div>\n\n                            <TABLE BORDER=0 WIDTH=300>\n\n                                <TD WIDTH=100>\n                                    <button class=\"btn btn-lg btn-primary btn-block\" type=\"submit\">Registrar</button>\n                                </TD>\n\n                                <TD WIDTH=100>\n                                    <button class=\"btn btn-lg btn-primary btn-block\" type=\"submit\">Cancelar</button>\n                                </TD>\n                        <TD WIDTH=100>\n                                    <button class=\"btn btn-lg btn-primary btn-block\" type=\"submit\">Limpiar</button>\n                                </TD>\n\n                            </TABLE>\n\n\n\n                        </form>\n\n                    </div>";
  } ); })();(function() { var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};templates['details-layout'] = template(function (Handlebars,depth0,helpers,partials,data) {
  this.compilerInfo = [4,'>= 1.0.0'];
helpers = this.merge(helpers, Handlebars.helpers); data = data || {};
  


  return "<div id=\"header\" class=\"container\"></div>\n<div class=\"clearfix\"></div>\n<br><br>\n<br><br>\n<br>\n<div id=\"body\" class=\"container\">\n    <div class=\"row\">\n                <div class=\"col-sm-9 well\">\n\n                    <div id=\"page-content\">\n                    </div>\n                    <div id=\"comments\">\n<div class=\"comment-list clearfix\" id=\"comments\">\n    <ol>\n        <li class=\"comment\">\n            <div class=\"comment-body\">\n                <div class=\"inner\">\n                    <div class=\"comment-arrow\"></div>\n                    <div class=\"comment-avatar\">\n                        <div class=\"avatar\">\n                            <img src=\"images/temp/avatar1.png\" alt=\"\" />\n                        </div>\n                    </div>\n                    <div class=\"comment-text\">\n                        <div class=\"comment-author clearfix\">\n                            <a href=\"#\" class=\"link-author\">Brad Pit</a>\n                            <span class=\"comment-date\">June 26, 2013</span> | \n                            <a href=\"#addcomments\" class=\"link-reply anchor\">Reply</a>\n                        </div>\n                        <div class=\"comment-entry\">\n                            William Bradley \"Brad\" Pitt is an American actor and film producer. Pitt has received four Academy nominations and five Award nominations.\n                        </div>\n                    </div>\n                    <div class=\"clear\"></div>\n                </div>\n            </div>\n        </li>\n    </ol>\n</div>\n                    </div>\n                </div>\n                <div class=\"col-sm-3\">\n                    <div id=\"sidebar\">\n                    </div>\n                </div>\n                \n     </div>\n</div>\n<div id=\"footer\" class=\"container\"></div>";
  } ); })();(function() { var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};templates['footer'] = template(function (Handlebars,depth0,helpers,partials,data) {
  this.compilerInfo = [4,'>= 1.0.0'];
helpers = this.merge(helpers, Handlebars.helpers); data = data || {};
  


  return "<div style=\"text-align: center;margin: 10px 0px 30px 0px;\">EPE Desarrollado por Alumonos EPE - Open Kick Starte Siguenos en </div>\n";
  } ); })();(function() { var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};templates['header'] = template(function (Handlebars,depth0,helpers,partials,data) {
  this.compilerInfo = [4,'>= 1.0.0'];
helpers = this.merge(helpers, Handlebars.helpers); data = data || {};
  var buffer = "", stack1, stack2, functionType="function", escapeExpression=this.escapeExpression, self=this;

function program1(depth0,data) {
  
  var buffer = "", stack1;
  buffer += "\n                ";
  stack1 = helpers['if'].call(depth0, depth0.show, {hash:{},inverse:self.noop,fn:self.program(2, program2, data),data:data});
  if(stack1 || stack1 === 0) { buffer += stack1; }
  buffer += "\n            ";
  return buffer;
  }
function program2(depth0,data) {
  
  var buffer = "", stack1;
  buffer += "\n                    <li>\n                        ";
  stack1 = helpers.unless.call(depth0, depth0.textonly, {hash:{},inverse:self.noop,fn:self.program(3, program3, data),data:data});
  if(stack1 || stack1 === 0) { buffer += stack1; }
  buffer += "\n                        ";
  stack1 = helpers['if'].call(depth0, depth0.textonly, {hash:{},inverse:self.noop,fn:self.program(5, program5, data),data:data});
  if(stack1 || stack1 === 0) { buffer += stack1; }
  buffer += "\n\n                    </li>\n                ";
  return buffer;
  }
function program3(depth0,data) {
  
  var buffer = "", stack1;
  buffer += "\n                            <a href=\"#";
  if (stack1 = helpers.url) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.url; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "\" class=\"link navbar-right\" data-id=\"";
  if (stack1 = helpers.id) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.id; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "\">";
  if (stack1 = helpers.text) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.text; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "</a>\n                        ";
  return buffer;
  }

function program5(depth0,data) {
  
  var buffer = "", stack1;
  buffer += "\n                            <div class=\"textonly\">";
  if (stack1 = helpers.text) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.text; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "</div>\n                        ";
  return buffer;
  }

  buffer += "<div class=\"dropdown-wrap boxed-velvet navbar-fixed-top bs-docs-nav\" role=\"navigation\">\n    <ul class=\"dropdown inner clearfix\">\n<li>\n<img src=\""
    + escapeExpression(((stack1 = ((stack1 = depth0.logo),stack1 == null || stack1 === false ? stack1 : stack1.src)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))
    + "\" class=\"pull-left\" alt=\""
    + escapeExpression(((stack1 = ((stack1 = depth0.logo),stack1 == null || stack1 === false ? stack1 : stack1.alt)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))
    + "\" Width=\"657px\" Height=\"50px\"/></li>\n            ";
  stack2 = helpers.each.call(depth0, depth0.enlaces, {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data});
  if(stack2 || stack2 === 0) { buffer += stack2; }
  buffer += "\n\n        </ul>\n</div>\n</div>";
  return buffer;
  } ); })();(function() { var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};templates['item'] = template(function (Handlebars,depth0,helpers,partials,data) {
  this.compilerInfo = [4,'>= 1.0.0'];
helpers = this.merge(helpers, Handlebars.helpers); data = data || {};
  var stack1, functionType="function", escapeExpression=this.escapeExpression, self=this;

function program1(depth0,data) {
  
  var buffer = "", stack1;
  buffer += "\n<div class=\"tabs_framed\">\n    <div class=\"inner\">\n        <ul class=\"tabs clearfix\">\n            <li class=\"active\"><a href=\"#fotos\" data-toggle=\"tab\">Imagenes</a></li>\n            <li><a href=\"#video\" data-toggle=\"tab\">Video</a></li>\n        </ul>\n\n        <div class=\"tab-content boxed clearfix\">\n            <div class=\"tab-pane fade in active\" id=\"fotos\">\n                <div class=\"widget-container widget_gallery boxed\">\n                    <div class=\"inner\">\n                        <div id=\"myCarousel\" class=\"carousel slide\" data-interval=\"20000\">\n                            <!-- Carousel items -->\n                            <div class=\"carousel-inner\">\n                                <div class=\"active item\">\n                                    <img src=\"";
  if (stack1 = helpers.url) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.url; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "\" alt=\"";
  if (stack1 = helpers.name) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.name; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "\"/>\n                                    <div class=\"carousel-title\">\n                                        <h3 class=\"name\">";
  if (stack1 = helpers.name) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.name; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "</h3>\n                                        <p class=\"name\">";
  if (stack1 = helpers.producer) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.producer; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "</p>\n                                    </div>\n                                </div>\n                                <div class=\"item\">\n                                    <img src=\"";
  if (stack1 = helpers.url) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.url; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "\" alt=\"";
  if (stack1 = helpers.name) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.name; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "\"/>\n                                    <div class=\"carousel-title\">\n                                        <h3 class=\"name\">";
  if (stack1 = helpers.name) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.name; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "</h3>\n                                        <p class=\"name\">";
  if (stack1 = helpers.producer) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.producer; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "</p>\n                                    </div>\n                                </div>\n                            </div>\n                            <!-- Carousel indicators -->\n                            <ol class=\"carousel-indicators\">\n                                <li data-target=\"#myCarousel\" data-slide-to=\"0\" class=\"active\"></li>\n                                <li data-target=\"#myCarousel\" data-slide-to=\"1\"></li>\n                            </ol>\n                            <!-- Carousel nav -->\n                            <a class=\"carousel-control left\" href=\"#myCarousel\" data-slide=\"prev\"></a>\n                            <a class=\"carousel-control right\" href=\"#myCarousel\" data-slide=\"next\"></a>\n                        </div>\n                    </div>\n                </div>\n            </div>\n            <div class=\"tab-pane fade\" id=\"video\">\n               <div class=\"video_player\">\n                    <div class=\"inner\">\n                        <video id=\"my_video_1\" class=\"video-js vjs-default-skin\" controls loop\n                               preload=\"auto\" poster=\"";
  if (stack1 = helpers.url) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.url; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "\"\n                               data-setup=\"{}\">\n                            <source src=\"http://test.themefuse.com/artiom/galapagos.mp4\" type='video/mp4'>\n                        </video>\n                    </div>\n                </div>\n            </div>\n        </div>\n    </div>\n</div>\n\n";
  return buffer;
  }

  stack1 = helpers['with'].call(depth0, depth0.item, {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data});
  if(stack1 || stack1 === 0) { return stack1; }
  else { return ''; }
  } ); })();(function() { var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};templates['list'] = template(function (Handlebars,depth0,helpers,partials,data) {
  this.compilerInfo = [4,'>= 1.0.0'];
helpers = this.merge(helpers, Handlebars.helpers); data = data || {};
  var buffer = "", stack1, functionType="function", escapeExpression=this.escapeExpression, self=this;

function program1(depth0,data) {
  
  var buffer = "", stack1;
  buffer += "\n    <div class=\"col-sm-4\">\n        <li class=\"price_col price_col_green col_active\" >\n            <div class=\"price_item\">\n                <div class=\"inner\">\n                    <div class=\"price_col_head gradient\">\n                        <span class=\"price\"><em>$ </em><sup>";
  if (stack1 = helpers.price) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.price; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "</sup><span class=\"label\">Estrellas ";
  if (stack1 = helpers.stars) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.stars; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "</span></span>\n                    </div>\n                    <div class=\"price_col_body clearfix\">\n                        <div class=\"price_body_inner\">\n                            <a href=\"#details/";
  if (stack1 = helpers.id) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.id; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "\">\n                                <img alt=\"";
  if (stack1 = helpers.name) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.name; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "\" src=\"";
  if (stack1 = helpers.url) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.url; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "\" class=\"img-thumbnail\"></a>\n                            <div class=\"price_body_top\">\n                            </div>\n                        </div>\n                        <ul>\n                            <div class=\"col-md-12 clearfix\">\n                            <li class=\"first\">\n                               <div class=\"progress progress-striped active\">\n                                    <div class=\"progress-bar progress-bar-info\" role=\"progressbar\" aria-valuenow=\"40\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: ";
  if (stack1 = helpers.stars) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.stars; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "0%\">\n                                      <span class=\"sr-only\">";
  if (stack1 = helpers.stars) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.stars; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "0% Complete</span>\n                                    </div>\n                                </div>\n                            </li>\n                            </div>\n                            <li>";
  if (stack1 = helpers.name) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.name; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "</li>\n                            <li class=\"last\">";
  if (stack1 = helpers.producer) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.producer; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "</li>\n                        </ul>\n                    </div>\n                </div>\n                <div class=\"price_col_foot\">\n                    <div class=\"sign_up\">\n                        <a href=\"#details/";
  if (stack1 = helpers.id) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.id; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "\" class=\"btn btn-red\" hidefocus=\"true\" style=\"outline: none; opacity: 1;\"><span>Ver Mas</span></a>\n                    </div>\n                </div>\n            </div>\n    </div>\n";
  return buffer;
  }

  buffer += "<div class=\"row well\">\n<div class=\"pricing_box price_style1 clearfix\">\n        <ul>\n";
  stack1 = helpers.each.call(depth0, depth0.list, {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data});
  if(stack1 || stack1 === 0) { buffer += stack1; }
  buffer += "\n        </ul>\n    </div>\n</div>";
  return buffer;
  } ); })();(function() { var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};templates['login'] = template(function (Handlebars,depth0,helpers,partials,data) {
  this.compilerInfo = [4,'>= 1.0.0'];
helpers = this.merge(helpers, Handlebars.helpers); data = data || {};
  


  return "<div class=\"alert alert-danger errorMessage\" style=\"display:none\">Complete todos los campos para poder continuar</div>\n<div class=\"form-signin\" role=\"form\">\n    <input id=\"email\" type=\"text\" class=\"form-control\" placeholder=\"Correo Electrónico\" required=\"\" autofocus=\"\">\n    <input id=\"password\" type=\"password\" class=\"form-control\" placeholder=\"Contraseña\" required=\"\">\n</div>";
  } ); })();(function() { var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};templates['perfilUsuario'] = template(function (Handlebars,depth0,helpers,partials,data) {
  this.compilerInfo = [4,'>= 1.0.0'];
helpers = this.merge(helpers, Handlebars.helpers); data = data || {};
  


  return "<div class=\"page-content\">\n                        <form class=\"form-create_project\" role=\"form\">\n                            <h2 class=\"form-create_project-heading\">Configuracion de la cuenta</h2>\n\n<div class=\"row\">\n    <label for=\"InputName\" class=\"col-sm-11 col-sm-offset-1\">Nombres</label>\n       <div class=\"col-sm-4 col-sm-offset-3\">                     \n            <input type=\"text\" class=\"form-control\" placeholder=\"Ingresar Nombre\" required autofocus>\n        </div>\n\n    <label for=\"InputDesc\" class=\"col-sm-11 col-sm-offset-1\">Apellidos</label>\n    <div class=\"col-sm-4 col-sm-offset-3\"> \n            <input type=\"text\" class=\"form-control\" placeholder=\"Ingresar Apellido\" required>\n     </div>\n\n    <label for=\"InputInfo\" class=\"col-sm-11 col-sm-offset-1\">Direccion</label>\n    <div class=\"col-sm-4 col-sm-offset-3\"> \n        <input type=\"text\" class=\"form-control\" placeholder=\"Ingresar Direccion\" required autofocus>\n    </div>\n\n    <label for=\"InputObjetivo\" class=\"col-sm-11 col-sm-offset-1\">Correo Electronico</label>\n<div class=\"col-sm-4 col-sm-offset-3\"> \n<input type=\"text\" class=\"form-control\" placeholder=\"Ingresar Correo\" required>\n</div>\n \n    <label for=\"InputInfo\" class=\"col-sm-11 col-sm-offset-1\">Contrase�a</label>\n<div class=\"col-sm-4 col-sm-offset-3\"> \n<input type=\"text\" class=\"form-control\" placeholder=\"Ingresar Contrase�a\" required autofocus>\n</div>\n<label for=\"InputInfo\" class=\"col-sm-11 col-sm-offset-1\">Confirmar Contrase�a</label>\n<div class=\"col-sm-4 col-sm-offset-3\"> \n<input type=\"text\" class=\"form-control\" placeholder=\"Contrase�a Erronea\" required autofocus>\n</div>\n\n                        </form>\n                    </div>";
  } ); })();(function() { var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};templates['popup-window'] = template(function (Handlebars,depth0,helpers,partials,data) {
  this.compilerInfo = [4,'>= 1.0.0'];
helpers = this.merge(helpers, Handlebars.helpers); data = data || {};
  var buffer = "", stack1, functionType="function", escapeExpression=this.escapeExpression, self=this;

function program1(depth0,data) {
  
  var buffer = "", stack1;
  buffer += "\n                <a href=\"javascript:void(0);\" id=\"";
  if (stack1 = helpers.id) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.id; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "\" class=\"popup-window-footer-btn btn btn-small ";
  stack1 = helpers['if'].call(depth0, depth0.primary, {hash:{},inverse:self.noop,fn:self.program(2, program2, data),data:data});
  if(stack1 || stack1 === 0) { buffer += stack1; }
  buffer += " ";
  stack1 = helpers.unless.call(depth0, depth0.primary, {hash:{},inverse:self.noop,fn:self.program(4, program4, data),data:data});
  if(stack1 || stack1 === 0) { buffer += stack1; }
  buffer += " ";
  stack1 = helpers['if'].call(depth0, depth0.hidden, {hash:{},inverse:self.noop,fn:self.program(6, program6, data),data:data});
  if(stack1 || stack1 === 0) { buffer += stack1; }
  buffer += " \">";
  if (stack1 = helpers.name) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.name; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "</a>\n            ";
  return buffer;
  }
function program2(depth0,data) {
  
  
  return " btn-primary ";
  }

function program4(depth0,data) {
  
  
  return "btn-danger";
  }

function program6(depth0,data) {
  
  
  return "hidden-button";
  }

  buffer += "<div class=\"popup-window modal ";
  if (stack1 = helpers.ctClass) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.ctClass; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "\">\n  <div class=\"modal-dialog\">\n    <div class=\"modal-content\">\n        <div class=\"modal-header\">\n            <h4>";
  if (stack1 = helpers.title) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.title; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "</h4>\n        </div>\n        <div class=\"modal-body\">\n        </div>\n        <div class=\"popup-window-footer modal-footer\">\n            <div class=\"main-buttons\">\n            ";
  stack1 = helpers.each.call(depth0, depth0.buttons, {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data});
  if(stack1 || stack1 === 0) { buffer += stack1; }
  buffer += "\n            </div>\n        </div>\n     </div>\n   </div>\n</div>";
  return buffer;
  } ); })();(function() { var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};templates['popup-windowUser'] = template(function (Handlebars,depth0,helpers,partials,data) {
  this.compilerInfo = [4,'>= 1.0.0'];
helpers = this.merge(helpers, Handlebars.helpers); data = data || {};
  var buffer = "", stack1, functionType="function", escapeExpression=this.escapeExpression, self=this;

function program1(depth0,data) {
  
  var buffer = "", stack1;
  buffer += "\n                <a href=\"javascript:void(0);\" id=\"";
  if (stack1 = helpers.id) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.id; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "\" class=\"popup-window-footer-btn btn btn-small ";
  stack1 = helpers['if'].call(depth0, depth0.primary, {hash:{},inverse:self.noop,fn:self.program(2, program2, data),data:data});
  if(stack1 || stack1 === 0) { buffer += stack1; }
  buffer += " ";
  stack1 = helpers.unless.call(depth0, depth0.primary, {hash:{},inverse:self.noop,fn:self.program(4, program4, data),data:data});
  if(stack1 || stack1 === 0) { buffer += stack1; }
  buffer += " ";
  stack1 = helpers['if'].call(depth0, depth0.hidden, {hash:{},inverse:self.noop,fn:self.program(6, program6, data),data:data});
  if(stack1 || stack1 === 0) { buffer += stack1; }
  buffer += " \">";
  if (stack1 = helpers.name) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.name; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "</a>\n            ";
  return buffer;
  }
function program2(depth0,data) {
  
  
  return " btn-primary ";
  }

function program4(depth0,data) {
  
  
  return "btn-danger";
  }

function program6(depth0,data) {
  
  
  return "hidden-button";
  }

  buffer += "<div class=\"popup-window modal ";
  if (stack1 = helpers.ctClass) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.ctClass; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "\">\n  <div class=\"modal-dialog\">\n    <div class=\"modal-content\">\n        <div class=\"modal-header\">\n            <h4>";
  if (stack1 = helpers.title) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.title; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "</h4>\n        </div>\n        <div class=\"modal-body\">\n        </div>\n        <div class=\"popup-window-footer modal-footer\">\n            <div class=\"main-buttons\">\n            ";
  stack1 = helpers.each.call(depth0, depth0.buttons, {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data});
  if(stack1 || stack1 === 0) { buffer += stack1; }
  buffer += "\n            </div>\n        </div>\n     </div>\n   </div>\n</div>";
  return buffer;
  } ); })();(function() { var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};templates['registroUser'] = template(function (Handlebars,depth0,helpers,partials,data) {
  this.compilerInfo = [4,'>= 1.0.0'];
helpers = this.merge(helpers, Handlebars.helpers); data = data || {};
  


  return "<div class=\"page-content\">\n                        <form class=\"form-create_project\" role=\"form\">\n                            <h2 class=\"form-create_project-heading\">Registrate</h2>\n\n<div class=\"row\">\n    <label for=\"InputName\" class=\"col-sm-11 col-sm-offset-1\">Nombres</label>\n       <div class=\"col-sm-4 col-sm-offset-3\">                     \n            <input type=\"text\" class=\"form-control\" placeholder=\"Ingresar Nombre\" required autofocus>\n        </div>\n\n    <label for=\"InputDesc\" class=\"col-sm-11 col-sm-offset-1\">Apellidos</label>\n    <div class=\"col-sm-4 col-sm-offset-3\"> \n            <input type=\"text\" class=\"form-control\" placeholder=\"Ingresar Apellido\" required>\n     </div>\n\n    <label for=\"InputInfo\" class=\"col-sm-11 col-sm-offset-1\">Direccion</label>\n    <div class=\"col-sm-4 col-sm-offset-3\"> \n        <input type=\"text\" class=\"form-control\" placeholder=\"Ingresar Direccion\" required autofocus>\n    </div>\n\n    <label for=\"InputObjetivo\" class=\"col-sm-11 col-sm-offset-1\">Correo Electronico</label>\n<div class=\"col-sm-4 col-sm-offset-3\"> \n<input type=\"text\" class=\"form-control\" placeholder=\"Ingresar Correo\" required>\n</div>\n \n    <label for=\"InputInfo\" class=\"col-sm-11 col-sm-offset-1\">Contrase�a</label>\n<div class=\"col-sm-4 col-sm-offset-3\"> \n<input type=\"text\" class=\"form-control\" placeholder=\"Ingresar Contrase�a\" required autofocus>\n</div>\n<label for=\"InputInfo\" class=\"col-sm-11 col-sm-offset-1\">Confirmar Contrase�a</label>\n<div class=\"col-sm-4 col-sm-offset-3\"> \n<input type=\"text\" class=\"form-control\" placeholder=\"Contrase�a Erronea\" required autofocus>\n</div>\n                            <TABLE BORDER=0 WIDTH=300>\n                                <TD WIDTH=100>\n                                    <button class=\"btn btn-lg btn-primary btn-block\" type=\"submit\">Registrar</button>\n                                </TD>\n                        <TD WIDTH=100>\n                                    <button class=\"btn btn-lg btn-primary btn-block\" type=\"submit\">Limpiar</button>\n                                </TD>\n                            </TABLE>\n                        </form>\n                    </div>\n<br>\n<h2 class=\"form-create_project-heading\">Iniciar Sesion</h2>\n<form role=\"form\">\n  <div class=\"form-group\">\n    <label for=\"email_ingreso\">Email</label>\n<input type=\"text\" class=\"form-control\" placeholder=\"Correo Erroneo\" required autofocus>\n  </div>\n  <div class=\"form-group\">\n    <label for=\"password_ingreso\">Contrase�a</label>\n    <input type=\"password\" class=\"form-control\" placeholder=\"Contrase�a Erronea\" required autofocus\n  </div>\n  <button type=\"submit\" class=\"btn\">Ingresar</button>\n</form>";
  } ); })();(function() { var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};templates['sidebar'] = template(function (Handlebars,depth0,helpers,partials,data) {
  this.compilerInfo = [4,'>= 1.0.0'];
helpers = this.merge(helpers, Handlebars.helpers); data = data || {};
  var buffer = "", stack1, self=this, functionType="function", escapeExpression=this.escapeExpression;

function program1(depth0,data) {
  
  var buffer = "", stack1;
  buffer += "\n        <li ";
  stack1 = helpers['if'].call(depth0, depth0.active, {hash:{},inverse:self.noop,fn:self.program(2, program2, data),data:data});
  if(stack1 || stack1 === 0) { buffer += stack1; }
  buffer += ">\n            <a href=\"#\" class=\"category_link\" data-id=\"";
  if (stack1 = helpers.id) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.id; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "\">\n                <i class=\"icon-chevron-right\"></i> ";
  if (stack1 = helpers.name) { stack1 = stack1.call(depth0, {hash:{},data:data}); }
  else { stack1 = depth0.name; stack1 = typeof stack1 === functionType ? stack1.apply(depth0) : stack1; }
  buffer += escapeExpression(stack1)
    + "\n            </a>\n        </li>\n    ";
  return buffer;
  }
function program2(depth0,data) {
  
  
  return "class=\"active\"";
  }

  buffer += "<div class=\"widget-container widget_search boxed\" >\n                <div class=\"inner\">\n                    <form method=\"get\" id=\"searchform2\" action=\"#\">\n                        <div class=\"clearfix\">\n                            <span class=\"btn btn-green\">\n                                <input type=\"submit\" id=\"searchsubmit2\" value=\"Buscar\" />\n                            </span>\n                            <div class=\"input_wrap\">\n                                <span class=\"input_icon\"></span>\n                                <input class=\"inputField\" name=\"search3\" type=\"text\"  placeholder=\"Buscar\" />\n                            </div>\n                        </div>\n                    </form>\n                </div>\n            </div>\n<ul class=\"nav nav-pills nav-stacked well\">\n ";
  stack1 = helpers.each.call(depth0, depth0.categories, {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data});
  if(stack1 || stack1 === 0) { buffer += stack1; }
  buffer += "\n</ul>";
  return buffer;
  } ); })();(function() { var template = Handlebars.template, templates = Handlebars.templates = Handlebars.templates || {};templates['what'] = template(function (Handlebars,depth0,helpers,partials,data) {
  this.compilerInfo = [4,'>= 1.0.0'];
helpers = this.merge(helpers, Handlebars.helpers); data = data || {};
  


  return "<br><br>\n<br><br>\n<br>\n<div class=\"page-content\">\n<h1>Kickstarter es un portal que se especializa en juntar en un mismo lugar a personas que tienen ideas, y personas dispuestas a apoyar esas ideas con donaciones. \nY noten que dije donaciones, no inversiones, por lo que la implementaci�n de tus ideas son tuyas, y este modelo no es como una empresa por acciones en donde cada persona que invierte obtiene una parte de tu idea. \nCualquiera puede presentar un proyecto en Kickstarter, de pr�cticamente cualquier tipo, desde un nuevo software hasta un concierto ben�fico, desde una pel�cula de cine independiente hasta una campa�a publicitaria para alguna causa. Tu imaginaci�n es el l�mite. \nObviamente sin embargo, es bueno tener una idea que no solo sea buena, sino que el mundo la entienda para que simpaticen por ella y quieran ser parte de esta. Un buen ejemplo es el proyecto Diaspora, del cual les habl� hace unos meses atr�s y cuyo objetivo es crear un competidor libre y abierto a Facebook. para que tengan una idea, los creadores de este proyecto pidieron US$10,000 d�lares para iniciar el proyecto, y ya llevan unos US$200,000 d�lares recolectados. \nY obviamente no tiene que ser algo tan ambicioso. Quiz�s si deseas hacer un cortometraje sobre un tema nicho en particular termines sorprendi�ndote el grado de apoyo que recibir�s. \nOtro tema importante es c�mo promover tu idea para que la gente done. El primer veh�culo obvio es el mismo portal de Kickstarter, pero recomiendo que no dependan de solo eso, sino que esparzan su idea por todo lo largo y ancho de la Web (o incluso, fuera de esta) para que m�s personas conozcan de su proyecto y los ayuden. \nPor ejemplo, si quieres realizar un cortometraje sobre alg�n tema X, lo ideal ser�a que anunciaras ese proyecto en p�ginas, portales, blogs y foros que tengan que ver con ese tema X. \nEn cuanto a c�mo funciona Kickstarter, la idea es la siguiente: Tu creas tu proyecto en Kickstarter y le pones una fecha l�mite y un monto l�mite de fondos que necesitas para esa fecha. De ah� en adelante las personas que visiten tu proyecto en Kickstarter tendr�n la opci�n de donar cualquier monto para ayudar a tu causa. \nLos que donan lo hacen con sus tarjetas de cr�dito a trav�s del servicio de Amazon Payments del popular portal Amazon.com, lo que tiene la ventaja de que son muy flexibles con las tarjetas que aceptan (es decir, tarjetas fuera de EEUU). Si no tienes una cuenta con Amazon, te dan la opci�n de crear una en ese preciso momento. \nSin embargo, cuando decides donar una cantidad X, en realidad tu tarjeta de cr�dito no es cargada en ese momento, sino que lo que sucede es que Kickstarter simplemente anota los datos de tu tarjeta, y espera a la fecha l�mite del proyecto, en cuyo momento si el objetivo de dinero fue alcanzado entonces Kickstarter le cobra a todos los donantes ese mismo d�a, de lo contrario se olvidan los datos de la tarjeta de cr�dito y el proyecto se cierra. Y obviamente, ya alcanzado el objetivo, las personas pueden seguir donando, con la �nica diferencia que se les carga a sus tarjetas inmediatamente. \nEn cuanto a c�mo hace dinero Kickstarter, su plan es bastante sencillo: Cobran un 5% de todo dinero recaudado por proyectos que lleguen a su objetivo, una cifra que no es tan alta como aparenta, ya que de seguro ellos deben pagar entre un 1.5% y un 3.5% a las tarjetas de cr�dito, y adem�s dado el servicio que ofrecen (en donde tu obtienes dinero donado) creo que ese 5% es m�s que merecido.\n</h1>\n</div>";
  } ); })();DEW.CategoriesCollection = Backbone.Collection.extend({
   url: 'https://dl.dropboxusercontent.com/u/260315578/categories.json'
});
DEW.CommentsCollection = Backbone.Collection.extend({
   localStorage: new Backbone.LocalStorage("comments")
});DEW.ListCollection = Backbone.Collection.extend({
   url: 'https://dl.dropboxusercontent.com/u/260315578/listCollection.json',

   getByCategory: function(categoryId) {
       if (parseInt(categoryId) !== 0) {
           var filteredModels = this.where({
               category: parseInt(categoryId)
           });
           //Solo hago esto porque where devuelve un arreglo del modelo y se
           //necesita un array de objetos directos
           var result = [];
           for(var i=0;i < filteredModels.length; i++) {
               result.push(filteredModels[i].toJSON());
           }
           return result;
       } else {
           return this.toJSON();
       }
   },

   getItem: function(itemId) {
       return this.findWhere({
           id: parseInt(itemId)
       });
   }
});DEW.LoginModel = Backbone.Model.extend({

    authenticate: function(email,password) {
        //Por ahora no vamos a llamar al servidor por lo tanto siempre retornamos true
        return true;
    }

});DEW.MenuPanel = Backbone.Collection.extend({
   url: 'https://dl.dropboxusercontent.com/u/260315578/MenuPanel.json'
});
DEW.StoreManagerClass = function(){};
$.extend(DEW.StoreManagerClass.prototype, {

    items:{},

    get: function(key){
        return this.items[key] || null;
    },

    put: function(key, value){
        this.items[key] = value;
    },

    removeAll: function() {
        this.items = {};
    },

    remove: function(key) {
        try {
            delete this.items[key];
        } catch(e) {};
    }
});
DEW.StoreManager = new DEW.StoreManagerClass();DEW.ViewManager = (function(){
    this.items = [];

    this.addView = function(view){
        return this.items.push(view);
    };

    this.removeAll = function(){
        if(this.items && this.items.length > 0){
            $.each(this.items, function(idx, view){
                if(view && typeof view.close === 'function'){
                    view.close();
                }
            });
        }
    };

    this.remove = function(item){
        var index = $.inArray(item, this.items);
        this.items.splice(index,1);
    };

    return this;
})();Backbone.View.prototype.close = function() {
  this.stopListening();
  this.remove();
  this.trigger("close");
};DEW.BaseLayout = Backbone.View.extend({

    template : Handlebars.templates['base-layout'],

    render: function(){
      //Algun parametro que le querramos configurar
      this.$el.html(this.template({title: this.title})); 
   }
});DEW.Comments = Backbone.View.extend({

    template: Handlebars.templates['comments']
});DEW.Create_project = Backbone.View.extend({

    template: Handlebars.templates['create_project'],

    initialize: function() {
        //Aqui se puede poner configuracion inicial
    },

    render: function() {
          this.$el.html(this.template({title: this.title//Algun parametro que le querramos configurar
        }));
        $("#body").empty().append(this.$el);
        return this;
    }
});DEW.DetailsLayout = Backbone.View.extend({

    template : Handlebars.templates['details-layout'],

    render: function(){
        this.$el.html(this.template({}));
    }
});DEW.Footer = Backbone.View.extend({

    template: Handlebars.templates['footer'],

    initialize: function() {
        //Aqui se puede poner configuracion inicial
    },

    render: function() {
        this.$el.html(this.template({
            //Algun parametro que le querramos configurar
        }));
    }
});DEW.Header = Backbone.View.extend({

    template: Handlebars.templates['header'],

    events: {
        "click .logout" : "logoutLink"
    },

    initialize: function() {
        //Aqui se puede poner configuracion inicial
    },

    render: function() {
        this.$el.html(this.template({
            //Algun parametro que le querramos configurar
            logo: this.options.logo,
            enlaces: this.options.enlaces
        }));
    },
    //Otra forma de llamar codigo es mediante handlers que se pueden pasar como parametro
    openLink: function(e) {
        e.preventDefault();
        //Obtengo cual es indice del elemento al que le hice click
        var idx = $(e.target).attr("data-id");
        //LLamo a handler que le pase como parametro
        this.options.enlaces[idx].handler();
    },

    login: function(email) {
        this.options.enlaces[0].show = false;
        this.options.enlaces[1].show = true;
        this.options.enlaces[1].text = email;
        this.options.enlaces[2].show = true;
        this.render();
    },

    logout: function() {
        this.options.enlaces[0].show = true;
        this.options.enlaces[1].show = false;
        this.options.enlaces[2].show = false;
        this.render();
    }

});DEW.Item = Backbone.View.extend({

    template: Handlebars.templates['item'],

    initialize: function() {},

    render: function() {
        this.$el.html(this.template({ item: this.model}));
    }
});DEW.List = Backbone.View.extend({

    template: Handlebars.templates['list'],

    categoryId: 0,
    
    initialize: function() {
        this.listenTo(this.model, 'reset',  this.render);
    },

    render: function() {
        this.$el.html(this.template({list: this.model.getByCategory(this.categoryId)
        }));
    }
});DEW.ListProject = Backbone.View.extend({

    template: Handlebars.templates['list'],

   categoryId: 0,
    
    initialize: function() {
        this.listenTo(this.model, 'reset',  this.render);
    },

    render: function() {
        this.$el.html(this.template({list: this.model.getByCategory(this.categoryId)
        }));
    }
});DEW.Login = Backbone.View.extend({

    template: Handlebars.templates['login'],

    initialize: function() {
        this.render();
    },

    render: function() {
        this.$el.html(this.template({}));
        this.trigger("ready");
    },

    authenticate: function(options) {
        var email = this.$el.find("#email").val();
        var password = this.$el.find("#password").val();

        if (email !== "" && password !== "") {
            if (this.model.authenticate(email,password)) {
                options.success(email);
            } else {
                this.$el.find(".errorMessage").show();
            }
        } else {
            this.$el.find(".errorMessage").show();
        }
    },

    hideLoginError: function() {
        this.$el.find(".errorMessage").hide();
    }
});DEW.PerfilUsuario = Backbone.View.extend({

    template: Handlebars.templates['perfilUsuario'],

    initialize: function() {

    },

  render: function() {
        this.$el.html(this.template({
            //Algun parametro que le querramos configurar
        }));
    }
});DEW.PopupUser = Backbone.View.extend({
    template : Handlebars.templates['popup-windowUser'],

    buttons: [],

    events: {
        "click .popup-window-footer .popup-window-footer-btn" : "mapFooterButtonHandler",
        "click .modal-header .close-icon" : "close"
    },

    initialize: function(){
        var me = this;

        me.ctClass = me.options.ctClass;
        me.title = me.options.title;
        me.panel = me.options.panel;
        me.buttons = me.options.buttons || [];
        me.buttons.push({
            id: 'cancel-btn',
            name : 'Cancelar',
            hidden: false,
            primary: false,
            handler: function() {
                this.close();
            }
        });
        me.needValidation = me.options.needValidation || false;

        me.listenTo(this.panel, 'ready', function() {
            this.$(".modal-body").append(me.panel.el);
        });
    },

    mapFooterButtonHandler: function(eventObject){
        var buttons = this.$('.popup-window-footer .popup-window-footer-btn'),
            button = eventObject.target,
            idx =  buttons.index(button),
            buttonCfg = this.buttons[idx];

        if(buttonCfg) {
            if (this.needValidation && buttonCfg.id !== "cancel-btn") {
                if (this.panel.validate()) {
                    buttonCfg.handler.call(this, button, buttons);
                }
            } else {
                buttonCfg.handler.call(this, button, buttons);
            }
        }

    },

    render:function(){
        var me = this;

        this.$el.html(this.template({
            ctClass : me.ctClass,
            title : this.title,
            buttons : this.buttons
        }));

        me.panel.render();

        this.$('.modal').modal({
            show: true,
            backdrop: 'static',
            keyboard: false
        });
    },

    close:function(){
        this.$('.modal').modal('hide');
        this.remove();
    }
});

DEW.PopupWindow = Backbone.View.extend({
    template : Handlebars.templates['popup-window'],

    buttons: [],

    events: {
        "click .popup-window-footer .popup-window-footer-btn" : "mapFooterButtonHandler",
        "click .modal-header .close-icon" : "close"
    },

    initialize: function(){
        var me = this;

        me.ctClass = me.options.ctClass;
        me.title = me.options.title;
        me.panel = me.options.panel;
        me.buttons = me.options.buttons || [];
        me.buttons.push({
            id: 'cancel-btn',
            name : 'Cancelar',
            hidden: false,
            primary: false,
            handler: function() {
                this.close();
            }
        });
        me.needValidation = me.options.needValidation || false;

        me.listenTo(this.panel, 'ready', function() {
            this.$(".modal-body").append(me.panel.el);
        });
    },

    mapFooterButtonHandler: function(eventObject){
        var buttons = this.$('.popup-window-footer .popup-window-footer-btn'),
            button = eventObject.target,
            idx =  buttons.index(button),
            buttonCfg = this.buttons[idx];

        if(buttonCfg) {
            if (this.needValidation && buttonCfg.id !== "cancel-btn") {
                if (this.panel.validate()) {
                    buttonCfg.handler.call(this, button, buttons);
                }
            } else {
                buttonCfg.handler.call(this, button, buttons);
            }
        }

    },

    render:function(){
        var me = this;

        this.$el.html(this.template({
            ctClass : me.ctClass,
            title : this.title,
            buttons : this.buttons
        }));

        me.panel.render();

        this.$('.modal').modal({
            show: true,
            backdrop: 'static',
            keyboard: false
        });
    },

    close:function(){
        this.$('.modal').modal('hide');
        this.remove();
    }
});

DEW.RegistroUser = Backbone.View.extend({

    template: Handlebars.templates['registroUser'],

    initialize: function() {

    },

  render: function() {
        this.$el.html(this.template({
            //Algun parametro que le querramos configurar
        }));
    }
});DEW.Sidebar = Backbone.View.extend({

    template: Handlebars.templates['sidebar'],

    currentCategoryId: 0,

    events: {
        "click .category_link" : "changeCategory"
    },

    initialize: function() {
        this.listenTo(this.model, 'reset',  this.render);
    },

    render: function() {
        var me = this;
        var categories = _.map(this.model.toJSON(),function(model) {
            model.active = me.currentCategoryId === model.id;
            return model;
        });
        this.$el.html(this.template({
            categories: categories
        }));
    },

    changeCategory: function(e) {
        e.preventDefault();
        this.currentCategoryId = parseInt($(e.target).attr("data-id"));
        this.render();
        this.trigger("changeCategory",this.currentCategoryId);
    }
});DEW.What = Backbone.View.extend({

    template: Handlebars.templates['what'],

    initialize: function() {
        //Aqui se puede poner configuracion inicial
    },

  render: function() {
        this.$el.html(this.template({
            //Algun parametro que le querramos configurar
        }));
    }
});DEW.ApoyaProjectController = function() {};

$.extend(DEW.ApoyaProjectController.prototype, {
    render: function() {
        DEW.ViewManager.removeAll();
        this.displayLayout();
        this.displayHeader();
        this.displayBody();
        this.displayFooter();
    },

    displayLayout: function() {
        var baseLayout = new DEW.BaseLayout();
        baseLayout.render();
        $(baseLayout.el).appendTo("#content");
        DEW.ViewManager.addView(baseLayout);
    },

        displayHeader: function() {
        var header = new DEW.Header({
            logo: {
                src: 'images/logo.jpg',
                alt: 'Logo'
            },
            enlaces: [{
                    id:0,
                    text:'Home',
                    show:true,
                    textonly:false,
                    url: 'home',
                    handler:function(){}
            },{
                    id:1,
                    text: 'Que es?',
                    url:"Quees",
                    show:true,
                    textonly: false,
                       handler:function(){}
            },{
                    id: 2,
                    text: 'Apoya un Proyecto',
                    show:true,
                    url:"ApoyaProject",
                    textonly: false,
                     handler:function(){}
                },{
                    id:3,
                    text: 'Registrate',
                    show:true,
                    url:"RegistroUser",
                    textonly: false,
                    handler:function(){}
                }]
        });
        header.render();
        $(header.el).appendTo("#header");
    },

    displayBody: function() {
        
        var listCollection = DEW.StoreManager.get('listCollection');
        if (listCollection === null) {
            listCollection = new DEW.ListCollection();
            listCollection.fetch({reset:true});
        }
        
        var ApoyaProject = new DEW.ListProject({
            model: listCollection
        });
        ApoyaProject.render();
        $(ApoyaProject.el).appendTo("#body");
        DEW.ViewManager.addView(ApoyaProject);
    },

    displayFooter: function() {
        var footer = new DEW.Footer();
        footer.render();
        $(footer.el).appendTo("#footer");
        DEW.ViewManager.addView(footer);
    }

});DEW.DetailsController = function() {};

$.extend(DEW.DetailsController.prototype, {
    render: function() {
        DEW.ViewManager.removeAll();
        this.displayLayout();
        this.displayHeader();
        this.displayBody();
        this.displayFooter();
    },

    displayLayout: function() {
        var detailsLayout = new DEW.DetailsLayout();
        detailsLayout.render();
        $(detailsLayout.el).appendTo("#content");
        DEW.ViewManager.addView(detailsLayout);
    },

     displayHeader: function() {
        var header = new DEW.Header({
            logo: {
                src: 'images/logo.png',
                alt: 'Logo'
            },
            enlaces: [{
                    id:0,
                    text:'Home',
                    show:true,
                    textonly:false,
                    handler:function (){}
            },{
                    id:1,
                    text: 'Que es?',
                    show:true,
                    textonly: false,
                    handler:function(){} 
            },{
                    id: 2,
                    text: 'Apoya un Proyecto',
                    show:true,
                    textonly: false,
                 url: 'Create_project',
                },{
                id: 3,
                text: 'Iniciar Sesión',
                show: true,
                textonly: false,
                handler: function() {
                    var loginPopup = new DEW.PopupWindow({
                        ctClass: 'loginPopup',
                        title: 'Iniciar Sesión',
                        needValidation: false,
                        panel: new DEW.Login({
                            model: new DEW.LoginModel()
                        }),
                        buttons: [{
                            id: 'create-btn',
                            name : 'Ingresar',
                            hidden: false,
                            primary: true,
                            handler: function() {
                                loginPopup.panel.authenticate({
                                    success: function(email) {
                                        loginPopup.panel.hideLoginError();
                                        header.login(email);
                                        loginPopup.close();
                                    }
                                });
                            }
                        }]
                    });
                    loginPopup.render();
                    $("body").append(loginPopup.el);
                }
            },{
                id: 4,
                text: '',
                textonly: true,
                show: false
            },{
                id: 5,
                text: 'Salir',
                show: false,
                textonly: false,
                handler: function() {
                    header.logout();
                }
            },{
                id:6,
                text: 'Registro',
                show: true,
                textonly: false,
                handler: function(){
                    var Registro = new DEW.PopupUser({
                        ctClass: 'Registro',
                        title: 'Registro',
                        needValidation: false,
                        panel: new DEW.RegistroUser({
                       
                        }),
                        buttons:[{
                              id: 'create-btn',
                            name : 'Registrar',
                            hidden: false,
                            primary: true,
                            handler:function(){

                            }
                        }]
                    });
                    Registro.render();
                    $("body").append(Registro.el);
                }
            },{
                id: 7,
                text: '',
                textonly: true,
                show: false
            },{
                id: 8,
                text: 'Salir',
                show: false,
                textonly: false,
                handler: function() {
                    header.logout();
                }
            }]
        });
        header.render();
        $(header.el).appendTo("#header");
    },

    displayBody: function() {
        var createproject =  new DEW.Create_project();
        createproject.render();
        $(createproject.el).appendTo("#body");
        DEW.ViewManager.addView(itemView);
    },

    displayFooter: function() {
        var footer = new DEW.Footer();
        footer.render();
        $(footer.el).appendTo("#footer");
    }

});DEW.DetailsController = function() {};

$.extend(DEW.DetailsController.prototype, {
    render: function() {
        DEW.ViewManager.removeAll();
        this.displayLayout();
        this.displayHeader();
        this.displayBody();
        this.displayFooter();
    },

    displayLayout: function() {
        var detailsLayout = new DEW.DetailsLayout();
        detailsLayout.render();
        $(detailsLayout.el).appendTo("#content");
        DEW.ViewManager.addView(detailsLayout);
    },

 displayHeader: function() {
        var header = new DEW.Header({
            logo: {
                src: 'images/logo.jpg',
                alt: 'Logo'
            },
            enlaces: [{
                    id:0,
                    text:'Home',
                    show:true,
                    textonly:false,
                    url: 'home',
                    handler:function(){                      
                    var Home = new DEW.BaseLayout();
                     Home.render();
                     $("#body").append(Home.el);
                }
            },{
                    id:1,
                    text: 'Que es?',
                    show:true,
                    textonly: false,
                       handler:function(){
                    var WhatIs = new DEW.What();
                     WhatIs.render();
                     $("#body").append(WhatIs.el);
                }
            },{
                    id: 2,
                    text: 'Apoya un Proyecto',
                    show:true,
                    textonly: false,
                     handler:function(){
                    var ApoyaProject = new DEW.ListProject();
                     ApoyaProject.render();
                     $("#body").append(ApoyaProject.el);
                }
                },{
                    id:3,
                    text: 'Registrate',
                    show:true,
                    textonly: false,
                    handler:function(){
                        
                    }
                }]
        });
        header.render();
        $(header.el).appendTo("#header");
    },

    displayBody: function() {
        var listCollection = DEW.StoreManager.get('CommentsCollection');
        if (listCollection === null) {
            listCollection = new DEW.ListCollection();
            listCollection.fetch({reset:true});
            listCollection.on('reset',function() {
                var itemModel = listCollection.getItem(DEW.itemID).toJSON();
                var itemView = new DEW.Item({
                    model: itemModel
                });
                itemView.render();
                $(itemView.el).appendTo("#page-content");
                DEW.ViewManager.addView(itemView);
            });
        } else {
            //Para mejorar la velocidad no recargo todo sino que reutilizo el codigo
            var itemModel = listCollection.getItem(DEW.itemID).toJSON();
            var itemView = DEW.Item({
                model: itemModel
            });
            itemView.render();
            $(itemView.el).appendTo("#page-content");
            DEW.ViewManager.addView(itemView);
        }
    },

    displayFooter: function() {
        var footer = new DEW.Footer();
        footer.render();
        $(footer.el).appendTo("#footer");
    }

});DEW.HomeController = function() {};

$.extend(DEW.HomeController.prototype, {
    render: function() {
        DEW.ViewManager.removeAll();
        this.displayLayout();
        this.displayHeader();
        this.displayBody();
        this.displayFooter();
    },

    displayLayout: function() {
        var baseLayout = new DEW.BaseLayout();
        baseLayout.render();
        $(baseLayout.el).appendTo("#content");
        DEW.ViewManager.addView(baseLayout);
    },

        displayHeader: function() {
        var header = new DEW.Header({
            logo: {
                src: 'images/logo.jpg',
                alt: 'Logo'
            },
            enlaces: [{
                    id:0,
                    text:'Home',
                    show:true,
                    textonly:false,
                    url: 'home',
                    handler:function(){}
            },{
                    id:1,
                    text: 'Que es?',
                    url:"Quees",
                    show:true,
                    textonly: false,
                       handler:function(){}
            },{
                    id: 2,
                    text: 'Apoya un Proyecto',
                    show:true,
                    url:"ApoyaProject",
                    textonly: false,
                     handler:function(){}
                },{
                    id:3,
                    text: 'Registrate',
                    show:true,
                    url:"RegistroUser",
                    textonly: false,
                    handler:function(){}
                }]
        });
        header.render();
        $(header.el).appendTo("#header");
    },

    displayBody: function() {

        //Cargando categorias
        var categoriesCollection = new DEW.CategoriesCollection();
        categoriesCollection.fetch({reset: true});

        var sidebar = new DEW.Sidebar({
            model: categoriesCollection
        });

        sidebar.on("changeCategory",function(categoryId) {
            listView.categoryId = categoryId;
            listView.render();
        });

        $(sidebar.el).appendTo("#sidebar");
        DEW.ViewManager.addView(sidebar);

        //Cargando lista de datos
        var listCollection = DEW.StoreManager.get('listCollection');
        if (listCollection === null) {
            listCollection = new DEW.ListCollection();
            listCollection.fetch({reset:true});
        }

        //Creando la vista y asociandole el modelo
        var listView = new DEW.List({
            model: listCollection
        });
        $(listView.el).appendTo("#page-content");
        DEW.ViewManager.addView(listView);
    },

    displayFooter: function() {
        var footer = new DEW.Footer();
        footer.render();
        $(footer.el).appendTo("#footer");
        DEW.ViewManager.addView(footer);
    }

});DEW.PanelController = function() {
};

$.extend(DEW.PanelController.prototype, {
    render: function() {
        DEW.ViewManager.removeAll();
        alert("Hola");
        this.displayLayout();
        this.displayHeader();
        this.displayBody();
        this.displayFooter();
    },
    displayLayout: function() {
        var baseLayout = new DEW.BaseLayout();
        baseLayout.render();
        $(baseLayout.el).appendTo("#content");
        DEW.ViewManager.addView(baseLayout);
    },
    displayHeader: function() {
        var header = new DEW.Header({
            logo: {
                src: 'images/logo.jpg',
                alt: 'Logo'
            },
            enlaces: [{
                    id: 0,
                    text: 'Home',
                    show: true,
                    textonly: false,
                    url: 'home',
                    handler: function() {
                    }
                }, {
                    id: 1,
                    text: 'Que es?',
                    url: "Quees",
                    show: true,
                    textonly: false,
                    handler: function() {
                    }
                }, {
                    id: 2,
                    text: 'Apoya un Proyecto',
                    show: true,
                    url: "ApoyaProject",
                    textonly: false,
                    handler: function() {
                    }
                }, {
                    id: 3,
                    text: 'Registrate',
                    show: true,
                    url: "RegistroUser",
                    textonly: false,
                    handler: function() {
                    }
                }]
        });
        header.render();
        $(header.el).appendTo("#header");
    },
    displayBody: function() {

        //Cargando categorias
        var categoriesCollection = new DEW.CategoriesCollection();
        categoriesCollection.fetch({reset: true});

        var sidebar = new DEW.Sidebar({
            model: categoriesCollection
        });

        sidebar.on("changeCategory", function(categoryId) {
            listView.categoryId = categoryId;
            listView.render();
        });

        $(sidebar.el).appendTo("#sidebar");
        DEW.ViewManager.addView(sidebar);

        //Cargando lista de datos
        var menuPanel = DEW.StoreManager.get('menuPanel');
        if (menuPanel === null) { 
            menuPanel = new DEW.MenuPanel();
            menuPanel.fetch({reset: true});
        }

        //Creando la vista y asociandole el modelo
        var listView = new DEW.List({
            model: listCollection
        });
        $(listView.el).appendTo("#page-content");
        DEW.ViewManager.addView(listView);
    },
    displayFooter: function() {
        var footer = new DEW.Footer();
        footer.render();
        $(footer.el).appendTo("#footer");
        DEW.ViewManager.addView(footer);
    }

});DEW.PerfilController = function() {
};

$.extend(DEW.PerfilController.prototype, {
    render: function() {
        DEW.ViewManager.removeAll();
        alert("Hola");
        this.displayLayout();
        this.displayHeader();
        this.displayBody();
        this.displayFooter();
    },
    displayLayout: function() {
        var baseLayout = new DEW.BaseLayout();
        baseLayout.render();
        $(baseLayout.el).appendTo("#content");
        DEW.ViewManager.addView(baseLayout);
    },
    displayHeader: function() {
        var header = new DEW.Header({
            logo: {
                src: 'images/logo.jpg',
                alt: 'Logo'
            },
            enlaces: [{
                    id: 0,
                    text: 'Home',
                    show: true,
                    textonly: false,
                    url: 'home',
                    handler: function() {
                    }
                }, {
                    id: 1,
                    text: 'Que es?',
                    url: "Quees",
                    show: true,
                    textonly: false,
                    handler: function() {
                    }
                }, {
                    id: 2,
                    text: 'Apoya un Proyecto',
                    show: true,
                    url: "ApoyaProject",
                    textonly: false,
                    handler: function() {
                    }
                }, {
                    id: 3,
                    text: 'Registrate',
                    show: true,
                    url: "RegistroUser",
                    textonly: false,
                    handler: function() {
                    }
                }]
        });
        header.render();
        $(header.el).appendTo("#header");
    },
    displayBody: function() {

        //Cargando categorias
        var menuPanel = new DEW.MenuPanel();
        menuPanel.fetch({reset: true});

        var sidebar = new DEW.Sidebar({
            model: menuPanel
        });

        sidebar.on("changeCategory", function(categoryId) {
            listView.categoryId = categoryId;
            listView.render();
        });

        $(sidebar.el).appendTo("#sidebar");
        DEW.ViewManager.addView(sidebar);

        //Cargando lista de datos
  //      var menuPanel = DEW.StoreManager.get('menuPanel');
  //      if (menuPanel === null) {
  //          menuPanel = new DEW.MenuPanel();
  //          menuPanel.fetch({reset: true});
  //      }

        var perfil = new DEW.PerfilUsuario();
        perfil.render();
        $(perfil.el).appendTo("#page-content");
        DEW.ViewManager.addView(perfil);




    },
    displayFooter: function() {
        var footer = new DEW.Footer();
        footer.render();
        $(footer.el).appendTo("#footer");
        DEW.ViewManager.addView(footer);
    }

});DEW.RegistroController = function() {};

$.extend(DEW.RegistroController.prototype, {
    render: function() {
        DEW.ViewManager.removeAll();
        this.displayLayout();
        this.displayHeader();
        this.displayBody();
        this.displayFooter();
    },

    displayLayout: function() {
        var baseLayout = new DEW.BaseLayout();
        baseLayout.render();
        $(baseLayout.el).appendTo("#content");
        DEW.ViewManager.addView(baseLayout);
    },

        displayHeader: function() {
        var header = new DEW.Header({
            logo: {
                src: 'images/logo.jpg',
                alt: 'Logo'
            },
            enlaces: [{
                    id:0,
                    text:'Home',
                    show:true,
                    textonly:false,
                    url: 'home',
                    handler:function(){}
            },{
                    id:1,
                    text: 'Que es?',
                    url:"Quees",
                    show:true,
                    textonly: false,
                       handler:function(){}
            },{
                    id: 2,
                    text: 'Apoya un Proyecto',
                    show:true,
                    textonly: false,
                     handler:function(){}
                },{
                    id:3,
                    text: 'Registrate',
                    show:true,
                    url:"RegistroUser",
                    textonly: false,
                    handler:function(){}
                }]
        });
        header.render();
        $(header.el).appendTo("#header");
    },

    displayBody: function() {
        
        var registro = new DEW.RegistroUser();
        registro.render();
        $(registro.el).appendTo("#body");
        DEW.ViewManager.addView(registro);
        
    },

    displayFooter: function() {
        var footer = new DEW.Footer();
        footer.render();
        $(footer.el).appendTo("#footer");
        DEW.ViewManager.addView(footer);
    }

});DEW.WhatController = function() {};

$.extend(DEW.WhatController.prototype, {
    render: function() {
        DEW.ViewManager.removeAll();
        this.displayLayout();
        this.displayHeader();
        this.displayBody();
        this.displayFooter();
    },

    displayLayout: function() {
        var baseLayout = new DEW.BaseLayout();
        baseLayout.render();
        $(baseLayout.el).appendTo("#content");
        DEW.ViewManager.addView(baseLayout);
    },

        displayHeader: function() {
        var header = new DEW.Header({
            logo: {
                src: 'images/logo.jpg',
                alt: 'Logo'
            },
            enlaces: [{
                    id:0,
                    text:'Home',
                    show:true,
                    textonly:false,
                    url: 'home',
                    handler:function(){}
            },{
                    id:1,
                    text: 'Que es?',
                    url:"Quees",
                    show:true,
                    textonly: false,
                       handler:function(){}
            },{
                    id: 2,
                    text: 'Apoya un Proyecto',
                    show:true,
                    textonly: false,
                     handler:function(){
                    var ApoyaProject = new DEW.ListProject();
                     ApoyaProject.render();
                     $("#body").append(ApoyaProject.el);
                }
                },{
                    id:3,
                    text: 'Registrate',
                    show:true,
                    url:"RegistroUser",
                    textonly: false,
                    handler:function(){}
                }]
        });
        header.render();
        $(header.el).appendTo("#header");
    },

    displayBody: function() {
        var what = new DEW.What();
        what.render();
        $(what.el).appendTo("#body");
        DEW.ViewManager.addView(what);
    },

    displayFooter: function() {
        var footer = new DEW.Footer();
        footer.render();
        $(footer.el).appendTo("#footer");
        DEW.ViewManager.addView(footer);
    }

});DEW.appRouter = Backbone.Router.extend({
    routes: {
        "home": "displayHome",
        "Quees": "displayQuees",
        "details/:id": "displayDetails",
        "RegistroUser": "displayRegistro",
        "ApoyaProject": "displayProject",
        "panel": "displayPanel",
        "perfil":"displayperfil",
        "*actions": "defaultRoute"
        
    },
    initialize: function()
    {

    },
            
    displayHome: function() {
        var homeController = new DEW.HomeController();
        homeController.render();
    },
            
   displayperfil:function() {
        alert("Hello\nHow are you?");
        var perfilController = new DEW.PerfilController();
        perfilController.render();
   },
           
    displayQuees: function() {
        var WhatIs = new DEW.WhatController();
        WhatIs.render();
    },
    displayDetails: function(id) {
        DEW.itemID = id;
        var detailsController = new DEW.DetailsController();
        detailsController.render();
    },
    displayRegistro: function() {
        var registrocontroller = new DEW.RegistroController();
        registrocontroller.render();
    },
    displayProject: function() {
        var apoyaproject = new DEW.ApoyaProjectController();
        apoyaproject.render();
    },
    displayPanel: function() {
        //   alert("Hello\nHow are you?");
        var panelController = new DEW.PanelController();
        panelController.render();
    },
    defaultRoute: function() {
        this.displayHome();
    }
});